// P4176 write by cn_ryh